草庐IT

Java HashMap 调整大小

全部标签

c++ - <sys/socket.h>中accept函数的地址大小长度

在“sys/socket.h”中它定义了函数:intaccept(intsocket,structsockaddr*address,socklen_t*address_len);我的问题与基于manual的socklen_t*address_len有关指向一个socklen_t,它在输入时指定提供的sockaddr结构的长度,在输出时指定存储地址的长度。什么情况下address_len大小输入与输出不同?我需要这个,以便我可以在为sockaddr_in结构创建的包装器上模拟测试用例。非常感谢! 最佳答案 它永远不会更多(输入长度​​

c++ - DirectX9 窗口在运行时调整大小而无需设备重置

在:C++\Win32application(notinfullscreen)\DX9如何在调整大小时快速且足够好地重绘窗口内容?Resize==userdragwindowborder.不同的方法:在每个WM_SIZE\WM_PAINT上重置设备。足够的分辨率,但黑色条纹出现在快速高档。在WM_EXITSIZEMOVE上重置设备并在WM_ENTERSIZEMOVE上暂停渲染。速度最快,但在调整大小时出现丑陋的黑色条纹。在这种情况下找不到如何使用dx9的交换链在调整大小时保持渲染和交换缓冲区;在WM_EXITSIZEMOVE上重置。正是2010SDK的官方演示中发生的情况。看起来很快并

c++ - 是否有 BOOST 池固定大小的分配器?

我要创建unordered_map(因为我特别想要一个HashMap)。我想在开始时分配它的最大大小(根据我的限制)。因此,如果我要分配256个条目,并且每个条目的大小为1B(只是一个例子。假设1Byte包括Key和Value)。那么我的总大小unordered_map键+条目是256B。我想在分配器中预分配256B。然后,当unordered_map会调用allocate()/deallocate(),allocator将从已经分配的内存中给它1B。typedefboost::unordered::unordered_map,std::equal_to,???>>myMap它存在于B

c++ - 在 CUDA 内核中使用许多固定大小的矩阵

我希望处理大约4000个固定大小(3x3、4x4)的矩阵,进行矩阵求逆和特征分解等操作。在我看来,最好的并行化方法是让许多GPU线程中的每一个线程处理问题的单个实例。有没有合理的方法来做到这一点?我已阅读:http://www.culatools.com/blog/2011/12/09/batched-operations/但据我所知,这始终是“正在努力”但看不到解决方案的事情。三年后,我希望有一个好的解决方案。到目前为止,我看过:在CUDA内核中使用Eigen:http://eigen.tuxfamily.org/dox-devel/TopicCUDA.html.但这还处于起步阶段:

c++ - 与 at() 或索引相比,为什么使用 C++ 迭代器会显着增加代码大小?

我一直在考虑在嵌入式系统(16KBSRAM和64KB闪存,CortexM4)上使用更新的C++语言功能,例如迭代器,但遇到了令人惊讶的障碍。为什么迭代器如此庞大?我的印象是它们基本上是一些指针运算或索引。STL是否引入了一些意外代码?这些是在Windows上使用KinetisDesignStudio和来自here的gcc-arm-none-eabi-4_9工具链使用以下标志。arm-none-eabi-g++-mcpu=cortex-m4-mthumb-mfloat-abi=hard-mfpu=fpv4-sp-d16-Os-fmessage-length=0-fsigned-char-

c++ - struct hack - 大小为零的数组

#includeusingnamespacestd;structnode1{charb[3];intc[0];};structnode2{intc[0];};structnode3{charb[3];};intmain(){cout我的问题是为什么编译器在node2中为intc[0]分配0字节但为其when节点1的一部分分配1个字节。我假设这1个字节是sizeof(node1)返回4的原因,因为没有它(就像在node3中)它的大小是3还是由于填充?还试图理解node2不应该有足够的空间来保存指向数组的指针(作为灵活数组/结构hack的一部分,它将在代码的更下方分配?

c++ - 恒定大小字符串的高效 HashMap

我需要将仅包含字母数字值(A-Z、0-9,无小写字母)的固定大小的字符串映射到其他字符串。unordered_map变得非常大(数千万个键),而映射值来自一组几千个字符串。在进行性能分析时,我发现大部分时间都花在了将新值插入map(operator[])上,而且清除map也需要很长时间。std::unordered_maphashMap;while(...){...hashMap[key]=value;//~50%ofprogramtimeisspenthere...}hashMap.clear();//Takesaverylongtime,atthispointhashMap.siz

c++ - VisualStudio *.obj 文件大小(513Mb objs 和 534Mb lib)

我是一名C++开发人员,使用的是VisualStudio2008。如何减小*.obj文件的大小?我读过whyaremyvisualstudio.objfilesaremassiveinsizecomparedtotheoutput.exe?但没有找到答案。当我将项目构建为静态库时,所有*.obj文件的总大小为513Mb,生成的库为534Mb。每个obj文件为1-13Mb。调试exe文件为11Mb。链接时代码生成(/Gm)已关闭。提前致谢。 最佳答案 由于将大量重复代码和符号放入多个目标文件中,目标文件往往会变大。这通常是由内联函数和

c# - Google Protocol Buffers - 固定大小的缓冲区?

使用GoogleProtocolBuffers,我可以为我编码的所有消息设置最大大小吗?如果我知道我编码的内容永远不会大于X字节,那么GoogleProtobuffs将始终生成一个大小为Y的缓冲区,如果我给它的数据量较小,则将其填充到大小Y? 最佳答案 protocolbuffers的有线格式不会使这变得微不足道;我不知道有什么办法可以做到这一点,但一种选择是使用您自己的长度header将其序列化到缓冲区中,并根据需要填充额外数据。您需要添加一个长度前缀,因为默认情况下不添加,否则它会在您的缓冲区末尾读取垃圾。即使尾随0也不合法(它

c++ - 在windows中获取文件大小

我找到了这个函数GetFileSizeEx(),它返回由结构并集形成的PLARGE_INTEGER中的文件大小。typedefunion_LARGE_INTEGER{struct{DWORDLowPart;LONGHighPart;};struct{DWORDLowPart;LONGHighPart;}u;LONGLONGQuadPart;}LARGE_INTEGER,*PLARGE_INTEGER;这是否与我将其称为结构的结构相同?我如何计算它返回的文件大小以及它可以处理多大的信息? 最佳答案 您可能误解了什么是union。文件的